home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.3 (Developer)…68k, x86, SPARC, PA-RISC] / NeXTSTEP 3.3 Dev Intel.iso / NextDeveloper / Source / GNU / cc / config.sub < prev    next >
Text File  |  1993-11-09  |  15KB  |  735 lines

  1. #!/bin/sh
  2. # Configuration validation subroutine script, version 1.1.
  3. #   Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc.
  4. # This file is (in principle) common to ALL GNU software.
  5. # The presence of a machine in this file suggests that SOME GNU software
  6. # can handle that machine.  It does not imply ALL GNU software can. 
  7.  
  8. #This file is free software; you can redistribute it and/or modify
  9. #it under the terms of the GNU General Public License as published by
  10. #the Free Software Foundation; either version 2 of the License, or
  11. #(at your option) any later version.
  12.  
  13. #This program is distributed in the hope that it will be useful,
  14. #but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. #GNU General Public License for more details.
  17.  
  18. #You should have received a copy of the GNU General Public License
  19. #along with this program; if not, write to the Free Software
  20. #Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  21.  
  22.  
  23. # Configuration subroutine to validate and canonicalize a configuration type.
  24. # Supply the specified configuration type as an argument.
  25. # If it is invalid, we print an error message on stderr and exit with code 1.
  26. # Otherwise, we print the canonical config type on stdout and succeed.
  27.  
  28. # This file is supposed to be the same for all GNU packages
  29. # and recognize all the CPU types, system types and aliases
  30. # that are meaningful with *any* GNU software.
  31. # Each package is responsible for reporting which valid configurations
  32. # it does not support.  The user should be able to distinguish
  33. # a failure to support a valid configuration from a meaningless
  34. # configuration.
  35.  
  36. # The goal of this file is to map all the various variations of a given
  37. # machine specification into a single specification in the form:
  38. #    CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
  39. # It is wrong to echo any other type of specification.
  40.  
  41. # First pass through any local machine types.
  42. case $1 in
  43.     *local*)
  44.         echo $1
  45.         exit 0
  46.         ;;
  47.     *)
  48.     ;;
  49. esac
  50.  
  51. # Separate what the user gave into CPU-COMPANY and OS (if any).
  52. basic_machine=`echo $1 | sed 's/-[^-]*$//'`
  53. if [ $basic_machine != $1 ]
  54. then os=`echo $1 | sed 's/.*-/-/'`
  55. else os=; fi
  56.  
  57. ### Let's recognize common machines as not being operating systems so
  58. ### that things like config.sub decstation-3100 work.  We also
  59. ### recognize some manufacturers as not being operating systems, so we
  60. ### can provide default operating systems below.
  61. case $os in
  62.     -sun*os*)
  63.         # Prevent following clause from handling this invalid input.
  64.         ;;
  65.     -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
  66.     -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
  67.     -unicom* | -ibm* | -next* | -hp | -isi* | -apollo | -altos* | \
  68.     -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
  69.     -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
  70.     -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp )
  71.         os=
  72.         basic_machine=$1
  73.         ;;
  74.     -hiux*)
  75.         os==-hiuxwe2
  76.         ;;
  77.     -sco4)
  78.         os=-sco3.2v4
  79.         basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
  80.         ;;
  81.     -sco3.2.[4-9]*)
  82.         os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
  83.         basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
  84.         ;;
  85.     -sco3.2v[4-9]*)
  86.         # Don't forget version if it is 3.2v4 or newer.
  87.         basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
  88.         ;;
  89.     -sco*)
  90.         os=-sco3.2v2
  91.         basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
  92.         ;;
  93.     -isc)
  94.         os=-isc2.2
  95.         basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
  96.         ;;
  97.     -clix*)
  98.         basic_machine=clipper-intergraph
  99.         ;;
  100.     -isc*)
  101.         basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
  102.         ;;
  103.     -lynx)
  104.         os=-lynxos
  105.         ;;
  106. esac
  107.  
  108. # Decode aliases for certain CPU-COMPANY combinations.
  109. case $basic_machine in
  110.     # Recognize the basic CPU types without company name.
  111.     # Some are omitted here because they have special meanings below.
  112.     tahoe | i[34]86 | i860 | m68k | m68000 | m88k | ns32k | arm | pyramid \
  113.         | tron | a29k | 580 | i960 | h8300 | hppa1.0 | hppa1.1 \
  114.         | alpha | we32k | ns16k | clipper | sparclite | i370 | sh \
  115.         | powerpc)
  116.         basic_machine=$basic_machine-unknown
  117.         ;;
  118.     # Object if more than one company name word.
  119.     *-*-*)
  120.         echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
  121.         exit 1
  122.         ;;
  123.     # Recognize the basic CPU types with company name.
  124.     vax-* | tahoe-* | i[34]86-* | i860-* | m68k-* | m68000-* | m88k-* \
  125.           | sparc-* | ns32k-* | fx80-* | arm-* | c[123]* \
  126.           | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
  127.           | none-* | 580-* | cray2-* | h8300-* | i960-* | xmp-* | ymp-* \
  128.           | hppa-* | hppa1.0-* | hppa1.1-* | alpha-* | we32k-* | cydra-* | ns16k-* \
  129.           | pn-* | np1-* | xps100-* | clipper-* | orion-* | sparclite-* \
  130.           | sh-* | powerpc-*)
  131.         ;;
  132.     # Recognize the various machine names and aliases which stand
  133.     # for a CPU type and a company and sometimes even an OS.
  134.     vaxv)
  135.         basic_machine=vax-dec
  136.         os=-sysv
  137.         ;;
  138.     vms)
  139.         basic_machine=vax-dec
  140.         os=-vms
  141.         ;;
  142.     i370-ibm* | ibm*)
  143.         basic_machine=i370-ibm
  144.         os=-mvs
  145.         ;;
  146. # I'm not sure what "Sysv32" means.  Should this be sysv3.2?
  147.     i[34]86v32)
  148.         basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
  149.         os=-sysv32
  150.         ;;
  151.     i[34]86v4*)
  152.         basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
  153.         os=-sysv4
  154.         ;;
  155.     i[34]86v)
  156.         basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
  157.         os=-sysv
  158.         ;;
  159.     i[34]86sol2)
  160.         basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
  161.         os=-solaris2
  162.         ;;
  163.     spur)
  164.         basic_machine=spur-unknown
  165.         ;;
  166.     paragon)
  167.         basic_machine=i860-intel
  168.         os=-osf
  169.         ;;
  170.     alliant | fx80)
  171.         basic_machine=fx80-alliant
  172.         ;;
  173.     convex-c1)
  174.         basic_machine=c1-convex
  175.         os=-bsd
  176.         ;;
  177.     convex-c2)
  178.         basic_machine=c2-convex
  179.         os=-bsd
  180.         ;;
  181.     convex-c32)
  182.         basic_machine=c32-convex
  183.         os=-bsd
  184.         ;;
  185.     convex-c34)
  186.         basic_machine=c34-convex
  187.         os=-bsd
  188.         ;;
  189.     convex-c38)
  190.         basic_machine=c38-convex
  191.         os=-bsd
  192.         ;;
  193.     m88k-omron*)
  194.         basic_machine=m88k-omron
  195.         ;;
  196.     merlin)
  197.         basic_machine=ns32k-utek
  198.         os=-sysv
  199.         ;;
  200.     crds | unos)
  201.         basic_machine=m68k-crds
  202.         ;;
  203.     elxsi)
  204.         basic_machine=elxsi-elxsi
  205.         os=-bsd
  206.         ;;
  207.     encore | umax | mmax)
  208.         basic_machine=ns32k-encore
  209.         ;;
  210.     genix)
  211.         basic_machine=ns32k-ns
  212.         ;;
  213.     iris | iris4d)
  214.         basic_machine=mips-sgi
  215.         case $os in
  216.             -irix*)
  217.             ;;
  218.             *)
  219.             os=-irix4
  220.             ;;
  221.         esac
  222.         ;;
  223.     news | news700 | news800 | news900)
  224.         basic_machine=m68k-sony
  225.         os=-newsos
  226.         ;;
  227.     3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
  228.         basic_machine=m68000-att
  229.         ;;
  230.     3b*)
  231.         basic_machine=we32k-att
  232.         ;;
  233.     delta | 3300 | motorola-3300 | motorola-delta \
  234.           | 3300-motorola | delta-motorola)
  235.         basic_machine=m68k-motorola
  236.         ;;
  237.     balance)
  238.         basic_machine=ns32k-sequent
  239.         os=-dynix
  240.         ;;
  241.         pc532)
  242.         basic_machine=ns32k-pc532
  243.         ;;
  244.     symmetry)
  245.         basic_machine=i386-sequent
  246.         os=-dynix
  247.         ;;
  248.     sun2)
  249.         basic_machine=m68000-sun
  250.         ;;
  251.     sun2os3)
  252.         basic_machine=m68000-sun
  253.         os=-sunos3
  254.         ;;
  255.     sun2os4)
  256.         basic_machine=m68000-sun
  257.         os=-sunos4
  258.         ;;
  259.     sun3os3)
  260.         basic_machine=m68k-sun
  261.         os=-sunos3
  262.         ;;
  263.     sun3os4)
  264.         basic_machine=m68k-sun
  265.         os=-sunos4
  266.         ;;
  267.     sun4os3)
  268.         basic_machine=sparc-sun
  269.         os=-sunos3
  270.         ;;
  271.     sun4os4)
  272.         basic_machine=sparc-sun
  273.         os=-sunos4
  274.         ;;
  275.     sun3)
  276.         basic_machine=m68k-sun
  277.         ;;
  278.     sun4)
  279.         basic_machine=sparc-sun
  280.         ;;
  281.     pbd)
  282.         basic_machine=sparc-tti
  283.         ;;
  284.     pbb)
  285.         basic_machine=m68k-tti
  286.         ;;
  287.     sun386 | sun386i | roadrunner)
  288.         basic_machine=i386-sun
  289.         ;;
  290.     ps2)
  291.         basic_machine=i386-ibm
  292.         ;;
  293.     fx2800)
  294.         basic_machine=i860-alliant
  295.         ;;
  296.     next)
  297.         basic_machine=m68k-next
  298.         os=-bsd
  299.         ;;
  300.     amiga)
  301.         basic_machine=m68k-cbm
  302.         ;;
  303.     amigados)
  304.         basic_machine=m68k-cbm
  305.         os=-amigados
  306.         ;;
  307.     amigaunix | amix)
  308.         basic_machine=m68k-cbm
  309.         os=-sysv4
  310.         ;;
  311.     hp9k3[2-9][0-9])
  312.         basic_machine=m68k-hp
  313.         ;;
  314.     hp9k31[0-9] | hp9k2[0-9][0-9])
  315.         basic_machine=m68000-hp
  316.         ;;
  317.     hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7)
  318.         basic_machine=hppa1.1-hp
  319.         ;;
  320.     hp9k8[0-9][0-9] | hp8[0-9][0-9])
  321.         basic_machine=hppa1.0-hp
  322.         ;;
  323.     h3050r* | hiux*)
  324.         basic_machine=hppa1.1-hitachi
  325.         os=-hiuxwe2
  326.         ;;
  327.     pa-hitachi)
  328.         basic_machine=hppa1.1-hitachi
  329.         os=-hiuxwe2
  330.         ;;
  331.     isi68 | isi)
  332.         basic_machine=m68k-isi
  333.         os=-sysv
  334.         ;;
  335.     apollo68)
  336.         basic_machine=m68k-apollo
  337.         os=-sysv
  338.         ;;
  339.     altos | altos3068)
  340.         basic_machine=m68k-altos
  341.         ;;
  342.     miniframe)
  343.         basic_machine=m68000-convergent
  344.         ;;
  345.     tower | tower-32)
  346.         basic_machine=m68k-ncr
  347.         ;;
  348.     news-3600 | risc-news)
  349.         basic_machine=mips-sony
  350.         os=-newsos
  351.         ;;
  352.     decstation | decstation-3100 | pmax | pmin | dec3100 | decstatn)
  353.         basic_machine=mips-dec
  354.         ;;
  355.     magnum | m3230)
  356.         basic_machine=mips-mips
  357.         os=-sysv
  358.         ;;
  359.     gmicro)
  360.         basic_machine=tron-gmicro
  361.         os=-sysv
  362.         ;;
  363.     rtpc | rtpc-*)
  364.         basic_machine=romp-ibm
  365.         ;;
  366.     am29k)
  367.         basic_machine=a29k-none
  368.         os=-bsd
  369.         ;;
  370.     amdahl)
  371.         basic_machine=580-amdahl
  372.         os=-sysv
  373.         ;;
  374.     cray | ymp)
  375.         basic_machine=ymp-cray
  376.         os=-unicos
  377.         ;;
  378.     cray2)
  379.         basic_machine=cray2-cray
  380.         os=-unicos
  381.         ;;
  382.     xmp)
  383.         basic_machine=xmp-cray
  384.         os=-unicos
  385.         ;;
  386.     delta88)
  387.         basic_machine=m88k-motorola
  388.         os=-sysv3
  389.         ;;
  390.     dpx2* | dpx2*-bull)
  391.         basic_machine=m68k-bull
  392.         os=-sysv3
  393.         ;;
  394.     sps7)
  395.         basic_machine=m68k-bull
  396.         os=-sysv2
  397.         ;;
  398.     ebmon29k)
  399.         basic_machine=a29k-amd
  400.         os=-ebmon
  401.         ;;
  402.     h8300hms)
  403.         basic_machine=h8300-hitachi
  404.         os=-hms
  405.         ;;
  406.     sh)
  407.         basic_machine=sh-hitachi
  408.         os=-hms
  409.         ;;
  410.     harris)
  411.         basic_machine=m88k-harris
  412.         os=-sysv3
  413.         ;;
  414.     hp300bsd)
  415.         basic_machine=m68k-hp
  416.         os=-bsd
  417.         ;;
  418.     hp300hpux)
  419.         basic_machine=m68k-hp
  420.         os=-hpux
  421.         ;;
  422.     hp9k2[0-9][0-9] | hp9k31[0-9])
  423.         basic_machine=m68000-hp
  424.         os=-hpux
  425.         ;;
  426.     hp9k3[2-9][0-9])
  427.         basic_machine=m68k-hp
  428.         os=-hpux
  429.         ;;
  430.     ncr3000)
  431.         basic_machine=i486-ncr
  432.         os=-sysv4
  433.         ;;
  434.     news1000)
  435.         basic_machine=m68030-sony
  436.         os=-newsos
  437.         ;;
  438.     nindy960)
  439.         basic_machine=i960-intel
  440.         os=-nindy
  441.         ;;
  442.     pn)
  443.         basic_machine=pn-gould
  444.         ;;
  445.     np1)
  446.         basic_machine=np1-gould
  447.         ;;
  448.     ultra3)
  449.         basic_machine=a29k-nyu
  450.         os=-sym1
  451.         ;;
  452.     vxworks960)
  453.         basic_machine=i960-wrs
  454.         os=-vxworks
  455.         ;;
  456.     vxworks68)
  457.         basic_machine=m68k-wrs
  458.         os=-vxworks
  459.         ;;
  460.         xps | xps100)
  461.         basic_machine=xps100-honeywell
  462.         ;;
  463.     none)
  464.         basic_machine=none-none
  465.         os=-none
  466.         ;;
  467.  
  468. # Here we handle the default manufacturer of certain CPU types.  It is in
  469. # some cases the only manufacturer, in others, it is the most popular.
  470.     mips)
  471.         basic_machine=mips-mips
  472.         ;;
  473.     romp)
  474.         basic_machine=romp-ibm
  475.         ;;
  476.     rs6000)
  477.         basic_machine=rs6000-ibm
  478.         ;;
  479.     vax)
  480.         basic_machine=vax-dec
  481.         ;;
  482.     we32k)
  483.         basic_machine=we32k-att
  484.         ;;
  485.     sparc)
  486.         basic_machine=sparc-sun
  487.         ;;
  488.         cydra)
  489.         basic_machine=cydra-cydrome
  490.         ;;
  491.     orion)
  492.         basic_machine=orion-highlevel
  493.         ;;
  494.     orion105)
  495.         basic_machine=clipper-highlevel
  496.         ;;
  497.     *)
  498.         echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
  499.         exit 1
  500.         ;;
  501. esac
  502.  
  503. # Here we canonicalize certain aliases for manufacturers.
  504. case $basic_machine in
  505.     *-digital*)
  506.         basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
  507.         ;;
  508.     *-commodore*)
  509.         basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
  510.         ;;
  511.     *)
  512.         ;;
  513. esac
  514.  
  515. # Decode manufacturer-specific aliases for certain operating systems.
  516.  
  517. if [ x"$os" != x"" ]
  518. then
  519. case $os in
  520.     # -solaris* is a basic system type, with this one exception.
  521.     -solaris1 | -solaris1.*)
  522.         os=`echo $os | sed -e 's|solaris1|sunos4|'`
  523.         ;;
  524.     -solaris)
  525.         os=-solaris2
  526.         ;;
  527.     # First accept the basic system types.
  528.     # The portable systems comes first.
  529.     # Each alternative must end in a *, to match a version number.
  530.     # -sysv* is not here because it comes later, after sysvr4.
  531.     -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
  532.           | -vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]* | -hpux* \
  533.           | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
  534.           | -amigados* | -msdos* | -newsos* | -unicos* | -aos* \
  535.           | -nindy* | -vxworks* | -ebmon* | -hms* | -mvs* | -clix* \
  536.           | -riscos* | -linux* | -uniplus* | -iris* | -rtu* | -xenix* \
  537.           | -hiux* | -386bsd* | -netbsd* | -riscix* | -lynxos*)
  538.         ;;
  539.     -sunos5*)
  540.         os=`echo $os | sed -e 's|sunos5|solaris2|'`
  541.         ;;
  542.     -sunos6*)
  543.         os=`echo $os | sed -e 's|sunos6|solaris3|'`
  544.         ;;
  545.     -osfrose*)
  546.         os=-osfrose
  547.         ;;
  548.     -osf*)
  549.         os=-osf
  550.         ;;
  551.     -utek*)
  552.         os=-bsd
  553.         ;;
  554.     -dynix*)
  555.         os=-bsd
  556.         ;;
  557.     -acis*)
  558.         os=-aos
  559.         ;;
  560.     -ctix* | -uts*)
  561.         os=-sysv
  562.         ;;
  563.     -triton*)
  564.         os=-sysv3
  565.         ;;
  566.     -oss*)
  567.         os=-sysv3
  568.         ;;
  569.     -svr4)
  570.         os=-sysv4
  571.         ;;
  572.     -svr3)
  573.         os=-sysv3
  574.         ;;
  575.     -sysvr4)
  576.         os=-sysv4
  577.         ;;
  578.     # This must come after -sysvr4.
  579.     -sysv*)
  580.         ;;
  581.     -xenix)
  582.         os=-xenix
  583.         ;;
  584.     -none)
  585.         ;;
  586.     *)
  587.         # Get rid of the `-' at the beginning of $os.
  588.         os=`echo $1 | sed 's/[^-]*-//'`
  589.         echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
  590.         exit 1
  591.         ;;
  592. esac
  593. else
  594.  
  595. # Here we handle the default operating systems that come with various machines.
  596. # The value should be what the vendor currently ships out the door with their
  597. # machine or put another way, the most popular os provided with the machine.
  598.  
  599. # Note that if you're going to try to match "-MANUFACTURER" here (say,
  600. # "-sun"), then you have to tell the case statement up towards the top
  601. # that MANUFACTURER isn't an operating system.  Otherwise, code above
  602. # will signal an error saying that MANUFACTURER isn't an operating
  603. # system, and we'll never get to this point.
  604.  
  605. case $basic_machine in
  606.     *-acorn)
  607.         os=-riscix1.2
  608.         ;;
  609.     *-dec | vax-*)
  610.         os=-ultrix4.2
  611.         ;;
  612.     i386-sun)
  613.         os=-sunos4.0.2
  614.         ;;
  615.     m68000-sun)
  616.         os=-sunos3
  617.         # This also exists in the configure program, but was not the
  618.         # default.
  619.         # os=-sunos4
  620.         ;;
  621.     *-tti)    # must be before sparc entry or we get the wrong os.
  622.         os=-sysv3
  623.         ;;
  624.     sparc-* | *-sun)
  625.         os=-sunos4.1.1
  626.         ;;
  627.     *-ibm)
  628.         os=-aix
  629.         ;;
  630.     *-hp)
  631.         os=-hpux
  632.         ;;
  633.     *-hitachi)
  634.         os=-hiux
  635.         ;;
  636.     i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
  637.         os=-sysv
  638.         ;;
  639.     *-cbm)
  640.         os=-amigados
  641.         ;;
  642.     *-dg)
  643.         os=-dgux
  644.         ;;
  645.     *-dolphin)
  646.         os=-sysv3
  647.         ;;
  648.     m88k-omron*)
  649.         os=-luna
  650.         ;;
  651.     *-sequent)
  652.         os=-bsd
  653.         ;;
  654.     *-crds)
  655.         os=-unos
  656.         ;;
  657.     *-ns)
  658.         os=-genix
  659.         ;;
  660.     i370-*)
  661.         os=-mvs
  662.         ;;
  663.     *-next)
  664.         os=-bsd
  665.         ;;
  666.     i[34]86-*)
  667.         os=-sco3.2v2
  668.         ;;
  669.         *-gould)
  670.         os=-sysv
  671.         ;;
  672.         *-highlevel)
  673.         os=-bsd
  674.         ;;
  675.     *-encore)
  676.         os=-bsd
  677.         ;;
  678.         *-sgi)
  679.         os=-irix
  680.         ;;
  681.     *-masscomp)
  682.         os=-rtu
  683.         ;;
  684.     *)
  685.         os=-none
  686.         ;;
  687. esac
  688. fi
  689.  
  690. # Here we handle the case where we know the os, and the CPU type, but not the
  691. # manufacturer.  We pick the logical manufacturer.
  692. vendor=unknown
  693. case $basic_machine in
  694.     *-unknown)
  695.         case $os in
  696.             -riscix*)
  697.                 vendor=acorn
  698.                 ;;
  699.             -sunos*)
  700.                 vendor=sun
  701.                 ;;
  702.             -lynxos*)
  703.                 vendor=lynx
  704.                 ;;
  705.             -aix*)
  706.                 vendor=ibm
  707.                 ;;
  708.             -hpux*)
  709.                 vendor=hp
  710.                 ;;
  711.             -hiux*)
  712.                 vendor=hitachi
  713.                 ;;
  714.             -unos*)
  715.                 vendor=crds
  716.                 ;;
  717.             -dgux*)
  718.                 vendor=dg
  719.                 ;;
  720.             -luna*)
  721.                 vendor=omron
  722.                 ;;
  723.             -genix*)
  724.                 vendor=ns
  725.                 ;;
  726.             -mvs*)
  727.                 vendor=ibm
  728.                 ;;
  729.         esac
  730.         basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
  731.         ;;
  732. esac
  733.  
  734. echo $basic_machine$os
  735.